home *** CD-ROM | disk | FTP | other *** search
- robugs.doc, Robugs 1.3 beta 3/14/92
-
-
- ROBUGS DOCUMENTATION
-
-
- INTRODUCTION
-
- Robugs is a game where you design and build miniature robots
- out of simple logic components. The robots (referred to as robugs
- from now on) interact on a 2 dimensional playfield which you the
- player also design. There is no score or goal to this game. The
- purpose is to have fun designing and watching your own robug
- worlds live, die and change. In addition, you can learn a little
- about simple binary logic.
-
-
- INSTALLATION
-
- See readme.1st file that accompanies this release.
-
- INSTRUCTIONS
-
- Robugs is a GEM based game. As such I have tried to make it as
- easy to use as possible. The instructions that follow don't
- describe all the features, but should give you enough information
- to get started. The rest of the features you should be able to
- figure out on your own. Remember, this is a beta release of a
- prototype game so not everything works the way it is suppose to.
- There are some known bugs, as well as, I imagine, bugs I have not
- yet discovered.
-
- There are two types of windows with corresponding file types
- in this game: Playfield windows/files and Robug windows/files.
- Playfield files have a .PF extension and robug files have a .RB
- extension by convention, however these extensions are optional.
- You can open an existing file of either type with the 'Open
- Playfield' or 'Open Robug' menu items or create new ones with the
- 'New robug' or 'New playfield' items. A playfield or robug can be
- saved by selecting the playfield's or robug's window and then
- selecting 'save' or 'save as' (to give it a new name). You may
- have multiple windows open at a time.
-
- THE ROBUG WINDOW
-
- A robug window shows the circuitry of an individual robug and
- lets you edit the circuitry. The left side of the window is a
- display of the robug circuit board. The right side is a palette
- of logic circuit components. Components can be picked up from the
- circuit board or palette by clicking on them with the left mouse
- button and put down by again clicking with the left mouse button.
- A component can be rotated through 90 degree intervals by picking
- it up and then pressing the right mouse button before putting it
- down.
-
- A help window for a component can be displayed by clicking on
- the component with the right mouse button without picking it up.
- The help windows give a description of the component and provide
- a logic truth table for it.
-
- A special item that can be picked up is the soldering iron
- (located in the top of the palette to the right of the arrow).
- The soldering iron must be used to wire the components together.
- Wires can only join inputs to outputs (or visa versa). To wire an
- input of one component to the output of another, pick up the
- soldering iron and click on the input (or output) connector with
- the left mouse button until a circular dot appears there, then
- click on the output (or input) of the other component until a
- line connects the two points. To remove a connection pick up and
- put down the two components that are connected (This is not the
- best solution but it works for now). The positions of components
- relative to one another on the circuit board do not make a
- difference to the operation of the robug, however some components
- are direction sensitive (bumpers, radar, thrusters and gun) while
- the rest are not. Other than that, the wiring (or connections)
- are all that matter for logically correct operation.
-
- You can pick up a copy of the robug in the robug window by
- selecting the 'Place' or 'Pickup' menu options. This copy may
- then be dropped on any playfield window (as described below) to
- include it in a game.
-
- THE PLAYFIELD WINDOW
-
- You edit the playfield by drawing walls and food with the left
- mouse button and erasing them with the right. If the 'Draw Food'
- menu item is selected (checked) then food is drawn, otherwise
- walls are drawn. You can also use the scatter food/wall/robugs
- options to randomly place these items on the playfield according
- to a fixed number or density (0 - 100%).
-
- Robugs can be picked up off the playfield by double clicking
- on them with the left mouse button. When a robug is picked up it
- becomes the mouse pointer and can be rotated in 90 degree
- intervals by pressing the right mouse button. A robug is dropped
- on the playfield with the left button. If the 'Replicate' menu
- item is selected then dropping a robug on the playfield will
- cause a copy (clone) to be dropped there instead. One or more
- robugs on the playfield can be selected (appear as a color
- inverted block) without picking them up by single clicking on
- them with the left mouse button. Certain menu options, such as
- 'Circuitry', 'Type', 'Kill' and 'Scatter Robug' can only be used
- if robugs are selected. Some of these, in particular 'Type' and
- 'Kill' can be used on more than one robug at a time. For example,
- you can give a group of selected robugs the same type all at
- once, or kill them all at once.
-
- You can edit the circuitry of a robug on the playfield by
- selecting the robug and then selecting 'circuitry' from the menu.
- If you do this while the game is running then you can watch the
- robug's actions change while you change its circuitry.
-
- You can open another window onto the same playfield by
- selecting the appropriate playfield window and then picking
- 'Duplicate' from the Window menu. This allows you to view more
- than one area of the playfield at the same time. Note this is not
- the same as opening the same playfield file from the file menu
- more than once. GEM only allows up to 4 open windows at a time so
- if you have 4 windows open (playfield + robug windows) you will
- have to close one before opening any new windows.
-
- A playfield window allows you to track one robug in it. To
- track a robug select the robug and then select 'Track Robug' from
- the Window menu. The window will then automatically readjust its
- view when necessary to keep the robug being tracked in sight. To
- turn off tracking, select the window and then 'Track Off' from
- the Window menu. If you have multiple windows open on the same
- playfield you can have each window track a separate robug.
-
- THE ROBUGS
-
- Robugs can attack one another and they can reproduce. Robugs
- attack by using guns (you must include them in a robugs design if
- you want them to have attack capability.) What happens when they
- are shot depends on the games death options which you can change
- at any time.
-
- Robugs reproduce by moving onto a food square, either by
- chance or by design (robugs can be built to detect and move
- toward food.) The food is then consumed and a clone of the robug
- who ate the food is produced. A maximum of 1024 robugs per game
- can exist at a time. If this maximum is reached, or your machine
- runs out of memory, reproduction will fail. You can also clone
- robugs yourself. To do this, pick up a robug, make sure the
- 'replicate' menu item is checked and proceed to drop clones on
- the playfield. When you have enough, deselect the replicate menu
- item.
-
- There are three types of robugs, set using the 'Type' dialog
- box: team robugs, social robugs and independent robugs. The type
- of a robug will determine what the enemy radar component sees as
- an enemy. If independent, the enemy radar will view any other
- robug as a potential enemy. If social, the radar will view any
- other robug not of the exact same design as itself as its enemy.
- (That is, they socialize only with their own "species".) If the
- robug is a team robug, its enemy radar will view any other robug
- not in its team as an enemy. There are four different teams
- (green, red, blue and yellow) and any collection of robugs,
- however different in design, can be made members of the same
- team. In addition, the type dialog box has 'Protected' and
- 'Unprotected' fields for setting whether a robug is protected or
- not. A protected robug is not effected in any way when shot.
- Social robugs are colored purple and independent robugs are white
- . (Of course you can't see the colors if your using the
- monochrome monitor.)
-
- ROBUG DESIGN
-
- Robugs are built out of 3 types of components: Logic gates,
- effectors and detectors. The idea is to connect these components
- in some useful way. The components operate according to binary
- logic. They have inputs and/or outputs that can have only two
- states - true or false (1 or 0 where 1 represents true.) If you
- are not familiar with binary logic you might want to read an
- introductory book on the subject (if your keen) though you can
- probably figure it out by dissecting the many example robugs that
- are included in this release.
-
- Detectors (blue) are output components used by robugs to sense
- their surroundings. There are only 3 detectors: Bumpers, enemy
- radar and food radar. Bumpers can tell when a robug is touching
- something on one of its four sides. An enemy radar detects
- enemies in one of four directions and a food radar detects food
- in one of four directions. Which direction these detect in
- depends which way you have them pointing in the robug. If a
- detector detects something its output is true, otherwise it is
- false.
-
- Effectors (green) are input components that cause the robot to
- do something physical such as move, turn or shoot if their inputs
- are true. There are four kinds: Thrusters, guns and left and
- right rotators. Rotation occurs in 90 degree intervals so robugs
- can face in four directions only. It is important to note that
- the actions of effectors occur in a particular order, that order
- being first guns, then rotators, then thrusters. For example, if
- a robug has a gun, rotator and thruster, all with a true state on
- their inputs at the same time then first the gun will fire, then
- it will turn, then it will thrust (move).
-
- Logic gates (white) provide the "brains" of the robug. They
- are used to process and build on the raw information from the
- detectors. They take one or two inputs from the outputs of
- detectors and the outputs of other logic gates and provide a
- single processed output. They include AND, OR, NOT and XOR
- (exclusive OR) gates. There is also a simple Toggle FlipFlop to
- act as a primitive sort of memory cell. While not a true logic
- gate, I have included something called a Random Gate, the output
- of which is randomly true or false. It has no input which is why
- it is not really a logic gate but it is useful for introducing
- random behaviour in a robug.
-
- The on-line help for components includes a diagram of the
- component and, in the case of the logic gates, a truth table to
- describe it behaviour (shows the output that results from all the
- different possible inputs.)
-
- GAME OPTIONS:
-
- The following options are available under the Game menu. They
- affect the game in the currently selected playfield window in a
- global fashion. Their settings are saved when you save a
- playfield.
-
- Death Options:
-
- 1. No death (nothing happens to a robug when it is shot.)
- 2. Dies.
- 3. Dies and turns into a food square.
- 4. Gets captured (its type becomes that of the robug who shot
- it.)
- 5. Gets captured and converted (into an exact clone of the
- robug who shot it.)
-
- Birth Options:
-
- 1. Randomize direction: if selected, when a robug moves over a
- food square and replicates, the new robug will have a random
- direction. Otherwise the new robug will have the same
- direction as its parent.
-
- Missile Options:
-
- This dialog box allows you to set the speed that missiles
- move at (relative to game speed) and their maximum range.
-
- Radar Options:
-
- This dialog box allows you to set the maximum range a radar
- (food radar or enemy radar) can detect objects at and
- whether or not the radar can see through walls.
-
-
- That's all for the instructions. The rest you can figure out
- by experimenting, looking at the example games and using the
- on-line help.
-
-
- HAVE FUN!!
-
-
- Brad Heide
- <EOF>
- ə